load("/home/xiegu/R_code/eyeIn/haier_shanghai_demo.RData")
load("/home/xiegu/R_code/eyeIn/haier_zhengzhou_demo.RData")
par(mfrow = c(4,3))
hist(haierZhengzhouTable$mart_5000, main = "mart_5000")
hist(haierZhengzhouTable$mart_1000, main = "mart_1000")
hist(haierZhengzhouTable$mart_500, main = "mart_500")
hist(haierZhengzhouTable$bus_1000, main = "bus_1000")
hist(haierZhengzhouTable$bus_500, main = "bus_500")
plot.new()
hist(haierZhengzhouTable$shop_5000, main = "shop_5000")
hist(haierZhengzhouTable$shop_1000, main = "shop_1000")
hist(haierZhengzhouTable$shop_500, main = "shop_500")
hist(haierZhengzhouTable$resid_5000, main = "resid_5000")
hist(haierZhengzhouTable$resid_1000, main = "resid_1000")
hist(haierZhengzhouTable$resid_500, main = "resid_500")
本部分的逻辑在于:通过使用上图的变量,创建线性组合,获得mart, bus, shop, resid四个变量。期待的情况是线性组合后的变量可以是正态分布或呈现长尾分布。以mart为例,mart = a * mart_5000 + b * mart_1000 + c * mart_500。
下面这段代码的目的是罗列所有满足a + b + c = 1的组合,画出所有情况下mart的直方图,寻找最接近正态或长尾的分布。因篇幅有限,图不在此列出。
par <- data.frame(a = NA, b = NA, c = NA)
for (i in 1:11) {
a <- ((i-1)/10)
rest <- 12 - i
for (j in 1:rest) {
b = ((j-1)/10)
c = 1 - a - b
par <- rbind(par, c(a, b, round(c,2)))
}
}
par <- par[-c(1),] # 获取所有a, b, c的组合
m <- numeric()
for (i in 1:nrow(par)) {
a <- par[i,1]
b <- par[i,2]
c <- par[i,3]
mart <- a * haierZhengzhouTable$mart_5000 + b * haierZhengzhouTable$mart_1000 + c * haierZhengzhouTable$mart_500
hist(mart)
qqnorm(mart)
print(i)
print(shapiro.test(mart)$p.value)
m[i] = shapiro.test(mart)$p.value
}
## [1] 1
## [1] 2.796005e-10
## [1] 2
## [1] 3.367461e-09
## [1] 3
## [1] 1.412664e-08
## [1] 4
## [1] 4.091971e-08
## [1] 5
## [1] 9.404817e-08
## [1] 6
## [1] 1.637832e-07
## [1] 7
## [1] 2.501975e-07
## [1] 8
## [1] 3.314364e-07
## [1] 9
## [1] 4.043569e-07
## [1] 10
## [1] 4.781981e-07
## [1] 11
## [1] 5.442457e-07
## [1] 12
## [1] 7.526161e-06
## [1] 13
## [1] 9.244757e-06
## [1] 14
## [1] 1.015808e-05
## [1] 15
## [1] 1.10901e-05
## [1] 16
## [1] 1.229474e-05
## [1] 17
## [1] 1.27043e-05
## [1] 18
## [1] 1.404813e-05
## [1] 19
## [1] 1.623021e-05
## [1] 20
## [1] 1.913067e-05
## [1] 21
## [1] 2.213393e-05
## [1] 22
## [1] 1.354784e-08
## [1] 23
## [1] 4.068119e-08
## [1] 24
## [1] 1.1365e-07
## [1] 25
## [1] 2.943602e-07
## [1] 26
## [1] 6.507985e-07
## [1] 27
## [1] 1.208079e-06
## [1] 28
## [1] 1.909225e-06
## [1] 29
## [1] 2.739481e-06
## [1] 30
## [1] 3.674554e-06
## [1] 31
## [1] 4.739585e-10
## [1] 32
## [1] 1.173296e-09
## [1] 33
## [1] 3.105503e-09
## [1] 34
## [1] 8.400591e-09
## [1] 35
## [1] 2.171089e-08
## [1] 36
## [1] 5.119861e-08
## [1] 37
## [1] 1.113231e-07
## [1] 38
## [1] 2.20883e-07
## [1] 39
## [1] 7.807912e-11
## [1] 40
## [1] 1.639947e-10
## [1] 41
## [1] 3.706311e-10
## [1] 42
## [1] 8.530205e-10
## [1] 43
## [1] 1.972997e-09
## [1] 44
## [1] 4.441384e-09
## [1] 45
## [1] 9.845948e-09
## [1] 46
## [1] 2.503155e-11
## [1] 47
## [1] 4.77421e-11
## [1] 48
## [1] 9.634416e-11
## [1] 49
## [1] 1.977799e-10
## [1] 50
## [1] 4.043051e-10
## [1] 51
## [1] 8.26797e-10
## [1] 52
## [1] 1.145096e-11
## [1] 53
## [1] 2.028289e-11
## [1] 54
## [1] 3.815041e-11
## [1] 55
## [1] 7.197753e-11
## [1] 56
## [1] 1.357369e-10
## [1] 57
## [1] 6.510907e-12
## [1] 58
## [1] 1.091707e-11
## [1] 59
## [1] 1.93052e-11
## [1] 60
## [1] 3.444119e-11
## [1] 61
## [1] 4.256032e-12
## [1] 62
## [1] 6.847944e-12
## [1] 63
## [1] 1.158758e-11
## [1] 64
## [1] 3.059966e-12
## [1] 65
## [1] 4.801249e-12
## [1] 66
## [1] 2.34589e-12
which.max(m)
## [1] 21
pm <- as.numeric(par[which.max(m), ])
# 0.1 0.9 0
p1 <- as.numeric(pm[1])
p2 <- as.numeric(pm[2])
p3 <- as.numeric(pm[3])
mart <- p1 * haierZhengzhouTable$mart_5000 + p2 * haierZhengzhouTable$mart_1000 + p3 * haierZhengzhouTable$mart_500
# test with shanghai data
#hist(mart <- p1 * haierShanghaiTable$mart_5000 + p2 * haierShanghaiTable$mart_1000 + p3 * haierShanghaiTable$mart_500, main = "test with shanghai 'mart' data ")
上段代码是在用郑州的数据建模,用上海的数据测试。我们可以看到上海的数据并不是非常正态分布,可能是由于上海数据只有24行造成的。
遵循同样的逻辑,我们可以获得shop, bank, resid的线性排列组合。
# shop
s <- numeric()
for (i in 1:nrow(par)) {
a <- par[i,1]
b <- par[i,2]
c <- par[i,3]
shop <- a * haierZhengzhouTable$shop_5000 + b * haierZhengzhouTable$shop_1000 + c * haierZhengzhouTable$shop_500
hist(shop)
qqnorm(shop)
print(i)
print(shapiro.test(shop)$p.value)
s[i] = shapiro.test(shop)$p.value
}
## [1] 1
## [1] 4.702038e-23
## [1] 2
## [1] 1.163302e-22
## [1] 3
## [1] 2.302621e-22
## [1] 4
## [1] 4.070767e-22
## [1] 5
## [1] 6.649414e-22
## [1] 6
## [1] 9.574597e-22
## [1] 7
## [1] 1.310047e-21
## [1] 8
## [1] 1.658042e-21
## [1] 9
## [1] 1.968289e-21
## [1] 10
## [1] 2.217121e-21
## [1] 11
## [1] 2.400606e-21
## [1] 12
## [1] 3.782642e-14
## [1] 13
## [1] 2.018139e-14
## [1] 14
## [1] 9.492964e-15
## [1] 15
## [1] 4.1836e-15
## [1] 16
## [1] 1.940617e-15
## [1] 17
## [1] 9.760864e-16
## [1] 18
## [1] 5.328743e-16
## [1] 19
## [1] 3.046066e-16
## [1] 20
## [1] 1.831047e-16
## [1] 21
## [1] 1.125611e-16
## [1] 22
## [1] 1.644332e-11
## [1] 23
## [1] 1.476154e-11
## [1] 24
## [1] 1.148919e-11
## [1] 25
## [1] 7.803184e-12
## [1] 26
## [1] 4.636699e-12
## [1] 27
## [1] 2.587366e-12
## [1] 28
## [1] 1.353213e-12
## [1] 29
## [1] 7.203968e-13
## [1] 30
## [1] 3.807568e-13
## [1] 31
## [1] 4.573971e-11
## [1] 32
## [1] 4.977662e-11
## [1] 33
## [1] 5.074805e-11
## [1] 34
## [1] 4.619197e-11
## [1] 35
## [1] 3.883043e-11
## [1] 36
## [1] 2.996128e-11
## [1] 37
## [1] 2.153769e-11
## [1] 38
## [1] 1.463573e-11
## [1] 39
## [1] 4.648325e-11
## [1] 40
## [1] 5.583215e-11
## [1] 41
## [1] 6.291949e-11
## [1] 42
## [1] 6.802467e-11
## [1] 43
## [1] 6.803795e-11
## [1] 44
## [1] 6.508427e-11
## [1] 45
## [1] 5.836948e-11
## [1] 46
## [1] 3.588591e-11
## [1] 47
## [1] 4.448777e-11
## [1] 48
## [1] 5.250905e-11
## [1] 49
## [1] 5.962555e-11
## [1] 50
## [1] 6.558684e-11
## [1] 51
## [1] 6.868189e-11
## [1] 52
## [1] 2.692826e-11
## [1] 53
## [1] 3.338429e-11
## [1] 54
## [1] 4.02522e-11
## [1] 55
## [1] 4.683035e-11
## [1] 56
## [1] 5.531244e-11
## [1] 57
## [1] 2.079164e-11
## [1] 58
## [1] 2.548205e-11
## [1] 59
## [1] 3.179724e-11
## [1] 60
## [1] 3.891333e-11
## [1] 61
## [1] 1.704796e-11
## [1] 62
## [1] 2.123259e-11
## [1] 63
## [1] 2.647865e-11
## [1] 64
## [1] 1.514354e-11
## [1] 65
## [1] 1.832726e-11
## [1] 66
## [1] 1.366061e-11
which.max(s)
## [1] 51
ps <- as.numeric(par[which.max(s), ])
p1 <- as.numeric(ps[1])
p2 <- as.numeric(ps[2])
p3 <- as.numeric(ps[3])
shop <- p1 * haierZhengzhouTable$shop_5000 + p2 * haierZhengzhouTable$shop_1000 + p3 * haierZhengzhouTable$shop_500
hist(shop)
# shop use row 51 of par
# bank
b <- numeric()
for (i in 1:nrow(par)) {
a <- par[i,1]
b <- par[i,2]
c <- par[i,3]
bank <- a * haierZhengzhouTable$bank_5000 + b * haierZhengzhouTable$bank_1000 + c * haierZhengzhouTable$bank_500
hist(bank)
qqnorm(bank)
print(i)
print(shapiro.test(bank)$p.value)
b[i] = shapiro.test(bank)$p.value
}
## [1] 1
## [1] 1.813163e-12
## [1] 2
## [1] 2.320741e-11
## [1] 3
## [1] 9.505315e-11
## [1] 4
## [1] 2.353135e-10
## [1] 5
## [1] 4.954012e-10
## [1] 6
## [1] 8.049855e-10
## [1] 7
## [1] 1.074856e-09
## [1] 8
## [1] 1.26654e-09
## [1] 9
## [1] 1.363687e-09
## [1] 10
## [1] 1.395097e-09
## [1] 11
## [1] 1.387156e-09
## [1] 12
## [1] 3.810819e-09
## [1] 13
## [1] 8.525401e-09
## [1] 14
## [1] 1.821757e-08
## [1] 15
## [1] 4.127285e-08
## [1] 16
## [1] 9.831157e-08
## [1] 17
## [1] 1.998404e-07
## [1] 18
## [1] 3.505955e-07
## [1] 19
## [1] 5.259074e-07
## [1] 20
## [1] 7.193728e-07
## [1] 21
## [1] 8.736817e-07
## [1] 22
## [1] 3.055283e-11
## [1] 23
## [1] 6.062081e-11
## [1] 24
## [1] 1.270645e-10
## [1] 25
## [1] 2.927355e-10
## [1] 26
## [1] 7.032767e-10
## [1] 27
## [1] 1.626942e-09
## [1] 28
## [1] 3.570965e-09
## [1] 29
## [1] 7.412807e-09
## [1] 30
## [1] 1.45355e-08
## [1] 31
## [1] 4.245159e-12
## [1] 32
## [1] 7.033407e-12
## [1] 33
## [1] 1.253408e-11
## [1] 34
## [1] 2.435314e-11
## [1] 35
## [1] 4.792622e-11
## [1] 36
## [1] 9.413596e-11
## [1] 37
## [1] 1.827442e-10
## [1] 38
## [1] 3.475346e-10
## [1] 39
## [1] 1.650228e-12
## [1] 40
## [1] 2.434411e-12
## [1] 41
## [1] 3.868377e-12
## [1] 42
## [1] 6.571143e-12
## [1] 43
## [1] 1.122264e-11
## [1] 44
## [1] 1.923496e-11
## [1] 45
## [1] 3.275546e-11
## [1] 46
## [1] 9.445306e-13
## [1] 47
## [1] 1.303035e-12
## [1] 48
## [1] 1.931591e-12
## [1] 49
## [1] 2.995765e-12
## [1] 50
## [1] 4.676173e-12
## [1] 51
## [1] 7.278752e-12
## [1] 52
## [1] 6.497816e-13
## [1] 53
## [1] 8.60802e-13
## [1] 54
## [1] 1.233033e-12
## [1] 55
## [1] 1.795953e-12
## [1] 56
## [1] 2.618502e-12
## [1] 57
## [1] 4.959415e-13
## [1] 58
## [1] 6.417202e-13
## [1] 59
## [1] 8.903934e-13
## [1] 60
## [1] 1.245186e-12
## [1] 61
## [1] 4.044032e-13
## [1] 62
## [1] 5.176307e-13
## [1] 63
## [1] 6.979236e-13
## [1] 64
## [1] 3.447602e-13
## [1] 65
## [1] 4.401805e-13
## [1] 66
## [1] 3.035477e-13
which.max(b)
## [1] 66
pb <- as.numeric(par[which.max(b), ])
p1 <- as.numeric(pb[1])
p2 <- as.numeric(pb[2])
p3 <- as.numeric(pb[3])
bank <- p1 * haierZhengzhouTable$bank_5000 + p2 * haierZhengzhouTable$bank_1000 + p3 * haierZhengzhouTable$bank_500
hist(bank)
# bank use row 6 of par
# resid
r <- numeric()
for (i in 1:nrow(par)) {
a <- par[i,1]
b <- par[i,2]
c <- par[i,3]
resid <- a * haierZhengzhouTable$resid_5000 + b * haierZhengzhouTable$resid_1000 + c * haierZhengzhouTable$resid_500
hist(resid)
qqnorm(resid)
print(i)
print(shapiro.test(resid)$p.value)
r[i] = shapiro.test(resid)$p.value
}
## [1] 1
## [1] 9.923643e-14
## [1] 2
## [1] 1.876334e-12
## [1] 3
## [1] 7.973075e-12
## [1] 4
## [1] 1.332603e-11
## [1] 5
## [1] 1.319254e-11
## [1] 6
## [1] 1.01001e-11
## [1] 7
## [1] 7.003024e-12
## [1] 8
## [1] 4.766455e-12
## [1] 9
## [1] 3.250119e-12
## [1] 10
## [1] 2.258155e-12
## [1] 11
## [1] 1.608794e-12
## [1] 12
## [1] 3.166505e-09
## [1] 13
## [1] 4.216336e-09
## [1] 14
## [1] 2.510279e-09
## [1] 15
## [1] 1.125132e-09
## [1] 16
## [1] 4.530992e-10
## [1] 17
## [1] 1.870889e-10
## [1] 18
## [1] 8.348541e-11
## [1] 19
## [1] 4.071258e-11
## [1] 20
## [1] 2.140541e-11
## [1] 21
## [1] 1.212842e-11
## [1] 22
## [1] 3.80231e-07
## [1] 23
## [1] 1.082303e-07
## [1] 24
## [1] 3.018506e-08
## [1] 25
## [1] 8.73388e-09
## [1] 26
## [1] 2.660813e-09
## [1] 27
## [1] 9.128499e-10
## [1] 28
## [1] 3.574643e-10
## [1] 29
## [1] 1.554308e-10
## [1] 30
## [1] 7.490806e-11
## [1] 31
## [1] 1.32312e-07
## [1] 32
## [1] 4.848656e-08
## [1] 33
## [1] 1.993607e-08
## [1] 34
## [1] 7.881741e-09
## [1] 35
## [1] 3.084969e-09
## [1] 36
## [1] 1.278497e-09
## [1] 37
## [1] 5.654821e-10
## [1] 38
## [1] 2.683666e-10
## [1] 39
## [1] 6.146646e-09
## [1] 40
## [1] 4.513802e-09
## [1] 41
## [1] 3.470283e-09
## [1] 42
## [1] 2.278503e-09
## [1] 43
## [1] 1.35518e-09
## [1] 44
## [1] 7.711839e-10
## [1] 45
## [1] 4.341824e-10
## [1] 46
## [1] 2.684374e-10
## [1] 47
## [1] 3.409431e-10
## [1] 48
## [1] 4.306413e-10
## [1] 49
## [1] 4.403182e-10
## [1] 50
## [1] 3.856795e-10
## [1] 51
## [1] 3.017008e-10
## [1] 52
## [1] 1.833453e-11
## [1] 53
## [1] 3.299541e-11
## [1] 54
## [1] 5.791277e-11
## [1] 55
## [1] 8.228745e-11
## [1] 56
## [1] 9.690336e-11
## [1] 57
## [1] 2.013546e-12
## [1] 58
## [1] 4.518175e-12
## [1] 59
## [1] 9.776379e-12
## [1] 60
## [1] 1.728027e-11
## [1] 61
## [1] 3.304893e-13
## [1] 62
## [1] 8.55427e-13
## [1] 63
## [1] 2.122649e-12
## [1] 64
## [1] 7.476008e-14
## [1] 65
## [1] 2.175865e-13
## [1] 66
## [1] 2.173151e-14
# reside use row 18 of par
which.max(r)
## [1] 22
pr <- as.numeric(par[which.max(r), ])
p1 <- as.numeric(pr[1])
p2 <- as.numeric(pr[2])
p3 <- as.numeric(pr[3])
resid <- p1 * haierZhengzhouTable$resid_5000 + p2 * haierZhengzhouTable$resid_1000 + p3 * haierZhengzhouTable$resid_500
hist(resid)
由于bus只有bus_1000和bus_500的数据,操作上会稍微有些不一样,但逻辑一致,最后得到的是一个bus = a * bus_1000 + b * bus_500的线性组合。
vec <- seq(0,1,0.1)
bu <- numeric()
for (i in 1:11) {
a <- vec[i]
bus <- a * haierZhengzhouTable$bus_1000 + (1-a) * haierZhengzhouTable$bus_500
hist(bus)
qqnorm(bus)
print(i)
print(shapiro.test(bus)$p.value)
bu[i] = shapiro.test(resid)$p.value
}
## [1] 1
## [1] 4.556234e-13
## [1] 2
## [1] 3.588475e-12
## [1] 3
## [1] 8.596165e-12
## [1] 4
## [1] 1.393814e-11
## [1] 5
## [1] 1.937762e-11
## [1] 6
## [1] 2.366167e-11
## [1] 7
## [1] 2.694112e-11
## [1] 8
## [1] 2.942577e-11
## [1] 9
## [1] 3.139721e-11
## [1] 10
## [1] 3.2991e-11
## [1] 11
## [1] 3.390559e-11
which.max(bu)
## [1] 1
# choose the first plot, par = 0, 1
pbu <- c(vec[which.max(bu)], 1- vec[which.max(bu)])
p1 <- pbu[1]
p2 <- pbu[2]
bus <- p1 * haierZhengzhouTable$bus_1000 + p2 * haierZhengzhouTable$bus_500
hist(bus)
pp <- 1
parking <- pp * haierZhengzhouTable$parking_500
# hist(haierZhengzhouTable$gome_1000)
# hist(haierZhengzhouTable$gome_500)
# hist(haierZhengzhouTable$suning_1000)
# hist(haierZhengzhouTable$suning_500)
# hist(haierZhengzhouTable$gree_1000)
# hist(haierZhengzhouTable$gree_500)
competition <- ((haierZhengzhouTable$gome_1000 + haierZhengzhouTable$gome_500 + haierZhengzhouTable$suning_500 + haierZhengzhouTable$suning_1000)*3 + (haierZhengzhouTable$gree_500 + haierZhengzhouTable$gree_1000)*2)/16
hist(competition)
我们可以获得mart, bus, shop, bank, resid, parking的计算方法及分布,如下。
par(mfrow = c(4,2))
hist(mart)
hist(bus)
hist(shop)
hist(bank)
hist(resid)
hist(parking)
hist(competition)
先将mart bus shop bank resid rescale到60至100分
mart <- rescale(mart, to = c(60, 100))
bus <- rescale(bus, to = c(60, 100))
shop <- rescale(shop, to = c(60, 100))
bank <- rescale(bank, to = c(60, 100))
resid <- rescale(resid, to = c(60, 100))
parking <- rescale(parking, to = c(60, 100))
competition <- rescale(competition, to = c(60, 100))
life <- 0.6 * mart + 0.1 * bank + 0.3 * resid
traffic <- 0.5 * bus + 0.5 * parking
business <- 0.8 * mart + 0.2 * shop
development <- 0 * bank + 0.9 * mart + 0.1 * resid
# competition
final.score <- 0.25 * life + 0.25 * traffic + 0.25 * business + 0.15 * development + 0.1 * competition
df <- data.frame(life, traffic, business, development, competition, final.score)
par(mfrow = c(3,2))
hist(life)
hist(traffic)
hist(business)
hist(development)
hist(competition)
hist(final.score)
haierZhengzhouTable <- data.frame(haierZhengzhouTable, round(data.frame(score.life = life, score.traffic = traffic, score.business = business, score.development = development, score.competition = competition, score.final = final.score),0))
save(haierZhengzhouTable, file = "haier_zhengzhou_demo1.RData")
pal <- colorNumeric(
palette = "Blues",
domain = zzDistrictMap$value)
pop1 <- paste0("<strong>区域: </strong>",
zzDistrictMap$name,
"<br><strong>",
"人口密度(人数/平方千米)",
": </strong>",
zzDistrictMap$value
)
a_popup <- paste0("<strong>名称: </strong>",
zzDistrictMap$name,
"<br><strong>",
"电话",
": </strong>",
zzDistrictMap$telephone,
"<br><strong>",
"地址",
": </strong>",
zzDistrictMap$address
)
leaflet(zzDistrictMap)%>%amap(group = '高德地图')%>%
addMiniMap()%>%
addMarkers(data = haierZhengzhouTable, ~longitude, ~latitude,
popup = paste0("<strong>名称: </strong>",
haierZhengzhouTable$name,
"<br><strong>",
"生活指数",
": </strong>",
haierZhengzhouTable$score.life,
"<br><strong>",
"交通指数",
": </strong>",
haierZhengzhouTable$score.traffic,
"<br><strong>",
"商业指数: </strong>",
haierZhengzhouTable$score.business,
"<br><strong>",
"发展指数: </strong>",
haierZhengzhouTable$score.development,
"<br><strong>",
"均值: </strong>",
haierZhengzhouTable$score.final
),
icon = makeIcon("https://raw.githubusercontent.com/pointhi/leaflet-color-markers/master/img/marker-icon-blue.png", iconWidth = 20, iconHeight =32),
group = '海尔专卖店')
mart <- pm[1] * haierShanghaiTable$mart_5000 + pm[2] * haierShanghaiTable$mart_1000 + pm[3] * haierShanghaiTable$mart_500
bus <- haierShanghaiTable$bus_500
shop <- ps[1] * haierShanghaiTable$shop_5000 + ps[2] * haierShanghaiTable$shop_1000 + ps[3] * haierShanghaiTable$shop_500
bank <- pb[1] * haierShanghaiTable$bank_5000 + pb[2] * haierShanghaiTable$bank_1000 + pb[3] * haierShanghaiTable$bank_500
resid <- pr[1] * haierShanghaiTable$resid_5000 + pr[2] * haierShanghaiTable$resid_1000 + pr[3] * haierShanghaiTable$resid_500
parking <- pp * haierShanghaiTable$parking_500
competition <- ((haierShanghaiTable$gome_1000 + haierShanghaiTable$gome_500 + haierShanghaiTable$suning_500 + haierShanghaiTable$suning_1000)*3 + (haierShanghaiTable$gree_500 + haierShanghaiTable$gree_1000)*2)/16
mart <- rescale(mart, to = c(60, 100))
bus <- rescale(bus, to = c(60, 100))
shop <- rescale(shop, to = c(60, 100))
bank <- rescale(bank, to = c(60, 100))
resid <- rescale(resid, to = c(60, 100))
parking <- rescale(parking, to = c(60, 100))
competition <- rescale(competition, to = c(60, 100))
life <- 0.6 * mart + 0.1 * bank + 0.3 * resid
traffic <- 0.5 * bus + 0.5 * parking
business <- 0.8 * mart + 0.2 * shop
development <- 0 * bank + 0.9 * mart + 0.1 * resid
# competition
final.score <- 0.25 * life + 0.25 * traffic + 0.25 * business + 0.15 * development + 0.1 * competition
df <- data.frame(life, traffic, business, development, competition, final.score)
par(mfrow = c(3,2))
hist(life)
hist(traffic)
hist(business)
hist(development)
hist(competition)
hist(final.score)
haierShanghaiTable <- data.frame(haierShanghaiTable, round(data.frame(score.life = life, score.traffic = traffic, score.business = business, score.development = development, score.competition = competition, score.final = final.score),0))
save(haierShanghaiTable, file = "haier_shanghai_demo1.RData")